%Banco_de_Dados_Nipes

nipe(1,'ESPADAS').
nipe(2,'COPAS').
nipe(3,'OUROS').
nipe(4,'PAUS').

%Banco_de_Dados__Cartas

cartas(1,'A').
cartas(2,2).
cartas(3,3).
cartas(4,4).
cartas(5,5).
cartas(6,6).
cartas(7,7).
cartas(8,8).
cartas(9,9).
cartas(10,10).
cartas(11,'J').
cartas(12,'Q').
cartas(13,'K').

%Sorteios_NIPE_CARTAS

sorteio_nipe(X) :-random(1,5,X).
sorteio_carta(Y) :- random(1,13,Y).

carta_usuario(R,K):-write('Digite o Cogido da Carta \n'),read(R),write('Digite o Codigo do nipe \n'),read(K).

%Execucao_do_Programa
sorteio(C,N)  :-sorteio_carta(C),sorteio_nipe(N).

mostrar(A,B):-cartas(A,C),write('\n carta  '),write(C),write(' de '),nipe(B,K),write(K).

%menu
comp:-sorteio(D,W),carta_usuario(C,K),verifica(D,C),verifica_nipe(W,K),write('\n \n a minha: '),mostrar(D,W),write('\n a sua'),mostrar(C,K).

verifica(A,B):- A==B,!,write('As Cartas sao Iguais ').
verifica(A,B):- write(' as Cartas sao diferentes  ').

verifica_nipe(A,B):- A==B,!,write('e os nipes iguais ' ).
verifica_nipe(A,B):- write('e os nipes diferentes').



jogar:-write('Bem Vindo \n O Jogo funciona da seguinte maneira vc deve escolher o numero de uma carta primeiramente, onde os numeros \n 1,2,3,4,5,6,7,8,9,10,11,12,13 \n correspondem as cartas \n A,2,3,4,5,6,7,8,9,10,J,Q,K \n depois quando solicitado vc deve informar o numero do nipe onde \n 1,2,3,4 \n equivalem a \n ESPADAS - COPAS - OUROS - PAUS,\n \n VAMOS VER SE VC DESCOBRE QUAL E A MINHA CARTA \n'),comp.



menu :- write('1 jogar \n 2 sair\n'),read(O),leitor(O).    
leitor(1):-jogar.
leitor(2):-write('bye').

menu.

